# 使用步骤：
# 	1.创建RequestParser对象
# 	parser = RequestParser()
# 	2.添加参数声明
# 	3.执行解析，返回参数对象
# 	4.使用

from flask import Flask
from flask_restful import Resource, Api, inputs
from flask_restful.reqparse import RequestParser
import re

app = Flask(__name__)
api = Api(app)

def mobile(phone):
    """
        检测手机号码
        :param phone: 手机
        :return: phone
    """
    if re.match(r'1[3-9]\d{9}', phone):
        return phone
    else:
        raise ValueError('{} is not phone'.format(phone))

class Index(Resource):
    def get(self):
        # 1.创建RequestParser对象
        parser = RequestParser()
        # 2.添加参数声明
        #    required: 是否必须存在。 True代表必须， False代表可以不传(默认)
        #    help: 当解析参数错误时，返回的错误信息
        #    type: 参数类型(重点)
        #       1.系统类型
        #            int float
        #       2. inputs
        #       3.自定义(重点中的重点)
        #           需求：需要参数是一个手机号码
        #           location: 指定从哪里获取参数
        # parser.add_argument('name', required=True, help='miss name param')
        parser.add_argument('name', location='args')
        # 3.执行解析,返回参数对象
        req = parser.parse_args()
        # 4.使用
        name = req.name
        # print(type(name))
        # req.get('name')
        return {'msg': 'name is {}'.format(name)}

    def post(self):
        parser = RequestParser()
        parser.add_argument('param', required=True, location='form', action='append')
        req = parser.parse_args()
        param = req.param
        return {'msg': 'param is {}'.format(param)}

api.add_resource(Index, '/')

if __name__ == "__main__":
    app.run(debug=True,host='0.0.0.0', port=5000)
